Skip to main content
This forum is closed to new posts and responses. Individual names altered for privacy purposes. The information contained in this website is provided for informational purposes only and should not be construed as a forum for customer support requests. Any customer support requests should be directed to the official HCL customer support channels below:

HCL Software Customer Support Portal for U.S. Federal Government clients
HCL Software Customer Support Portal

HCL Notes/Domino 8.5 Forum (includes Notes Traveler)

HCL Notes/Domino 8.5 Forum (includes Notes Traveler)

Previous Next
Subject: Notes C API hangs during NotesInitExtended
Feedback Type: Problem
Product Area: Notes Client
Technical Area: Functionality
Platform: Windows
Release: 8.5
Reproducible: Always

I have a multithreaded application(called DownloadApp) that tries to download the items in a nsf on the server using the notes C API in each thread. When testing this application with 8.5 server and client came across this problem:

- The download application is working fine on a machine where notes client is installed till all of a sudden it crashes and exits without calling NotesTermThread() for some threads and NotesTerm().
- After this I am not able to start the notes client on this machine unless I kill the nlnotes.exe and its child process.
- After this crash if I try to restart the download application it hangs when calling NotesInitExtended(). Part of the stack trace is provided below.

Thread 17
Current frame: ntdll!KiFastSystemCallRet
ChildEBP RetAddr Caller,Callee
0510cbc0 7739bf53 *** ERROR: Symbol file could not be found. Defaulted to export symbols for user32.dll -
user32!WaitMessage+0xc
0510cbc4 7739610a user32!DefDlgProcW+0x132, calling user32!WaitMessage
0510cbec 7738968a user32!ScrollWindowEx+0x120a, calling user32!ScrollWindowEx+0xeb
0510cbf8 7738969d user32!ScrollWindowEx+0x121d, calling user32!DefDlgProcW+0x4b
0510cc20 7739f762 user32!SoftModalMessageBox+0x6f8, calling user32!ScrollWindowEx+0x1167
0510cd30 77e63235 kernel32!WideCharToMultiByte+0xf2, calling kernel32!LCMapStringW+0x21c
0510cd5c 77e744ec kernel32!Process32Next+0x67, calling kernel32!WideCharToMultiByte
0510cd80 7739dbc0 user32!ClientThreadSetup+0x3b, calling ntdll!RtlLeaveCriticalSection
0510ce28 7c82a124 ntdll!RtlAllocateHeap+0x14e, calling ntdll!tan+0xbe
0510ce34 7c82a0b8 ntdll!RtlAllocateHeap+0xe2, calling ntdll!RtlAllocateHeap+0x13b
0510ce38 7c82a0fc ntdll!RtlAllocateHeap+0x126, calling ntdll!CIpow+0x464
0510ceb0 7c826cdb ntdll!NtCallbackReturn+0xc
0510ceb4 7739df29 user32!GetProcessWindowStation+0x30, calling ntdll!NtCallbackReturn
0510cee0 7739f047 user32!MessageBoxTimeoutW+0x1d9, calling user32!SoftModalMessageBox
0510cf6c 05b204e0 nnotes!CvsprintfEx+0x200, calling nnotes!Cstrncpy
0510cf74 05b204e9 nnotes!CvsprintfEx+0x209, calling nnotes!Cstrlen
0510cfb0 7c826d2b ntdll!NtClose+0xc
0510cfb4 77e63eb3 kernel32!CloseHandle+0x44, calling ntdll!NtClose
0510cfc0 05c8f8ec nnotes!OSUnloadNNotes+0x15c, calling kernel32!CloseHandle
0510d030 7739eec9 user32!MessageBoxTimeoutW+0x5b, calling user32!MessageBoxTimeoutW+0x64
0510d088 773d7cf5 user32!MessageBoxTimeoutA+0x9c, calling user32!MessageBoxTimeoutW
0510d0bc 773c42c8 user32!MessageBoxExA+0x1b, calling user32!MessageBoxTimeoutA
0510d0dc 773c42a4 user32!MessageBoxA+0x45, calling user32!MessageBoxExA
0510d0f8 05c0902e nnotes!MUIInitInterfaceAPIs+0x47e, calling user32!MessageBoxA
0510d13c 0674c654 nnotes!OSLocalShrink+0x169a4, calling ntdll!RtlLeaveCriticalSection
0510d148 06738c90 nnotes!OSLocalShrink+0x2fe0, calling nnotes!OSLocalShrink+0x16980
0510d150 06738c7f nnotes!OSLocalShrink+0x2fcf, calling nnotes!OSLocalShrink+0x2fd1
0510d15c 7c82a771 ntdll!wcslen+0x1f3, calling ntdll!RtlRestoreLastWin32Error+0x52
0510d180 7c82a90a ntdll!wcslen+0x38c, calling ntdll!RtlLeaveCriticalSection
0510d188 7c829f59 ntdll!RtlFreeHeap+0x142, calling ntdll!CIpow+0x464
0510d1c4 7c82776b ntdll!ZwReadFile+0xc
0510d1c8 77e418b2 kernel32!ReadFile+0x67, calling ntdll!ZwReadFile
0510d1ec 77e418d5 kernel32!ReadFile+0x8a, calling kernel32!GetTickCount+0x73
0510d25c 7c829f59 ntdll!RtlFreeHeap+0x142, calling ntdll!CIpow+0x464
0510d260 06744123 nnotes!OSLocalShrink+0xe473, calling ntdll!RtlFreeHeap
0510d284 0674c61a nnotes!OSLocalShrink+0x1696a, calling ntdll!RtlEnterCriticalSection
0510d298 7c826d2b ntdll!NtClose+0xc
0510d2ac 0674c654 nnotes!OSLocalShrink+0x169a4, calling ntdll!RtlLeaveCriticalSection
0510d2b8 06739bd6 nnotes!OSLocalShrink+0x3f26, calling nnotes!OSLocalShrink+0x16980
0510d2c0 06739bcb nnotes!OSLocalShrink+0x3f1b, calling nnotes!OSLocalShrink+0x3f1d
0510d2e8 067433c4 nnotes!OSLocalShrink+0xd714, calling ntdll!RtlLeaveCriticalSection
0510d2f4 06737c79 nnotes!OSLocalShrink+0x1fc9, calling nnotes!OSLocalShrink+0xd700
0510d300 0673648e nnotes!OSLocalShrink+0x7de, calling nnotes!OSLocalShrink+0x1fa0
0510d308 06736483 nnotes!OSLocalShrink+0x7d3, calling nnotes!OSLocalShrink+0x7d5
0510d400 7c82a124 ntdll!RtlAllocateHeap+0x14e, calling ntdll!tan+0xbe
0510d40c 7c82a0b8 ntdll!RtlAllocateHeap+0xe2, calling ntdll!RtlAllocateHeap+0x13b
0510d410 7c82a0fc ntdll!RtlAllocateHeap+0x126, calling ntdll!CIpow+0x464
0510d42c 05b199fb nnotes!OSInitSem+0x6b, calling nnotes!OSInitSpin
0510d46c 05c07a5c nnotes!OSInitExt+0x15c, calling nnotes!MUIInitInterfaceAPIs+0x130
0510d508 7c829fb5 ntdll!RtlGetNtGlobalFlags+0x38, calling ntdll!ExpInterlockedPopEntrySListEnd+0x11
0510d51c 7c829f59 ntdll!RtlFreeHeap+0x142, calling ntdll!CIpow+0x464
0510d550 7c82c724 ntdll!RtlUpcaseUnicodeChar+0x78, calling ntdll!wcslen+0x29
0510d558 7c82c17c ntdll!RtlDetermineDosPathNameType_U+0x2d0, calling ntdll!RtlTimeFieldsToTime+0x6a8
0510d570 7c82c600 ntdll!RtlDetermineDosPathNameType_U+0x754, calling ntdll!RtlLeaveCriticalSection
0510d578 7c82c5ee ntdll!RtlDetermineDosPathNameType_U+0x742, calling ntdll!CIpow+0x464
0510d59c 7c82a90a ntdll!wcslen+0x38c, calling ntdll!RtlLeaveCriticalSection
0510d638 7c82c557 ntdll!RtlDetermineDosPathNameType_U+0x6ab, calling ntdll!RtlLeaveCriticalSection
0510d640 7c82c529 ntdll!RtlDetermineDosPathNameType_U+0x67d, calling ntdll!CIpow+0x464
0510d6f8 7c82a124 ntdll!RtlAllocateHeap+0x14e, calling ntdll!tan+0xbe
0510d704 7c82a0b8 ntdll!RtlAllocateHeap+0xe2, calling ntdll!RtlAllocateHeap+0x13b
0510d708 7c82a0fc ntdll!RtlAllocateHeap+0x126, calling ntdll!CIpow+0x464
0510d718 7c82a124 ntdll!RtlAllocateHeap+0x14e, calling ntdll!tan+0xbe
0510d724 7c82a0b8 ntdll!RtlAllocateHeap+0xe2, calling ntdll!RtlAllocateHeap+0x13b
0510d728 7c82a0fc ntdll!RtlAllocateHeap+0x126, calling ntdll!CIpow+0x464
0510d79c 7c826c9b ntdll!ZwAllocateVirtualMemory+0xc
0510d7a0 7c833c4e ntdll!RtlGetFullPathName_UstrEx+0x391, calling ntdll!ZwAllocateVirtualMemory
0510d7b4 7c82b58e ntdll!wcscpy+0x113, calling ntdll!wcslen+0x47
0510d7d8 7c833a36 ntdll!RtlGetFullPathName_UstrEx+0x179, calling ntdll!wcscpy+0x5e
0510d810 7c82a4e1 ntdll!RtlRestoreLastWin32Error+0x3ab, calling ntdll!RtlLeaveCriticalSection
0510d814 7c82a0fc ntdll!RtlAllocateHeap+0x126, calling ntdll!CIpow+0x464
0510d824 7c829fb5 ntdll!RtlGetNtGlobalFlags+0x38, calling ntdll!ExpInterlockedPopEntrySListEnd+0x11
0510d830 7c829f3d ntdll!RtlFreeHeap+0x126, calling ntdll!RtlGetNtGlobalFlags+0x12
0510d838 7c829f59 ntdll!RtlFreeHeap+0x142, calling ntdll!CIpow+0x464
0510d868 7c829fb5 ntdll!RtlGetNtGlobalFlags+0x38, calling ntdll!ExpInterlockedPopEntrySListEnd+0x11
0510d87c 7c829f59 ntdll!RtlFreeHeap+0x142, calling ntdll!CIpow+0x464
0510d8d4 7c829fb5 ntdll!RtlGetNtGlobalFlags+0x38, calling ntdll!ExpInterlockedPopEntrySListEnd+0x11
0510d8e0 7c829f3d ntdll!RtlFreeHeap+0x126, calling ntdll!RtlGetNtGlobalFlags+0x12
0510d8e8 7c829f59 ntdll!RtlFreeHeap+0x142, calling ntdll!CIpow+0x464
0510d954 77e5079d kernel32!GetPrivateProfileStringW+0x90f, calling ntdll!RtlFreeHeap
0510d994 77e501c2 kernel32!GetPrivateProfileStringW+0x334, calling kernel32!GetTickCount+0x73
0510d9bc 7c829f59 ntdll!RtlFreeHeap+0x142, calling ntdll!CIpow+0x464
0510d9d8 7c829fb5 ntdll!RtlGetNtGlobalFlags+0x38, calling ntdll!ExpInterlockedPopEntrySListEnd+0x11
0510d9e4 7c829f3d ntdll!RtlFreeHeap+0x126, calling ntdll!RtlGetNtGlobalFlags+0x12
0510d9ec 7c829f59 ntdll!RtlFreeHeap+0x142, calling ntdll!CIpow+0x464
0510da34 7c82a0fc ntdll!RtlAllocateHeap+0x126, calling ntdll!CIpow+0x464
0510da38 78ab0269 *** ERROR: Symbol file could not be found. Defaulted to export symbols for msvcr100.dll -
msvcr100!malloc+0x36, calling ntdll!RtlAllocateHeap
0510da58 78ab233b msvcr100!operator new+0x10, calling msvcr100!malloc
0510da60 78ab233b msvcr100!operator new+0x10, calling msvcr100!malloc
0510da74 04a44758 DownloadApp+0x4758, calling msvcr100!operator new
0510da98 78b004ef msvcr100!wgetcwd+0x47, calling msvcr100!unlock
0510dac0 7c829f59 ntdll!RtlFreeHeap+0x142, calling ntdll!CIpow+0x464
0510dac4 78ab016a msvcr100!free+0x1c, calling ntdll!RtlFreeHeap
0510dad8 04a432df DownloadApp+0x32df, calling msvcr100!operator delete
0510daec 04a432fc DownloadApp+0x32fc, calling DownloadApp!PasswordPromptHandler+0x1f86
0510dba4 7c82a0fc ntdll!RtlAllocateHeap+0x126, calling ntdll!CIpow+0x464
0510dbc8 79fdc643 mscorwks!WaitHandleNative::CorWaitOneNative+0x1f2, calling mscorwks!_EH_epilog3
0510dfd4 7c82a0b8 ntdll!RtlAllocateHeap+0xe2, calling ntdll!RtlAllocateHeap+0x13b
0510dfe4 624d27f6 *** WARNING: Unable to verify checksum for nlsccstr.dll
*** ERROR: Symbol file could not be found. Defaulted to export symbols for nlsccstr.dll -
nlsccstr!EXT_NLS_xlate_string32+0x326, calling *** ERROR: Symbol file could not be found. Defaulted to export symbols for msvcr71.dll -
msvcr71!memcpy
0510e010 05ced247 nnotes!NotesInitIni+0x17, calling nnotes!OSInitExt
0510e0e0 05b771f6 nnotes!OSNativeToLMBCS+0x46, calling nnotes!NLS_xlate_string32
0510e114 05ced4f0 nnotes!NotesInitExtended+0x60, calling nnotes!OSNativeToLMBCS
0510e120 05ced4fc nnotes!NotesInitExtended+0x6c, calling nnotes!NotesInitIni
0510e1b4 04a4a629 DownloadApp!GetNoteOwnerId+0x1da9, calling DownloadApp!GetNoteOwnerId+0x230
0510e1d0 04a41980 DownloadApp+0x1980, calling msvcr100!operator delete[]
0510e1e4 04a4199d DownloadApp+0x199d, calling DownloadApp!PasswordPromptHandler+0x1f86
0510e1f8 7c82a0fc ntdll!RtlAllocateHeap+0x126, calling ntdll!CIpow+0x464
0510e1fc 78ab0269 msvcr100!malloc+0x36, calling ntdll!RtlAllocateHeap
0510e218 78ac5bcf msvcr100!strdup+0x36, calling msvcr100!strcpy_s
0510e234 04a48e93 DownloadApp!GetNoteOwnerId+0x613, calling nnotes!NotesInitExtended
0510e33c 04a4a629 DownloadApp!GetNoteOwnerId+0x1da9, calling DownloadApp!GetNoteOwnerId+0x230
0510e380 7c82a0fc ntdll!RtlAllocateHeap+0x126, calling ntdll!CIpow+0x464
0510e384 78ab0269 msvcr100!malloc+0x36, calling ntdll!RtlAllocateHeap
0510e3a4 78ab233b msvcr100!operator new+0x10, calling msvcr100!malloc
0510e3c0 04a48c0b DownloadApp!GetNoteOwnerId+0x38b, calling msvcr100!operator new
0510e3f0 04a46f9f DownloadApp!InitializeLN+0x10f, calling DownloadApp!GetNoteOwnerId+0x450

Please let me know:
How I can recover programmatically from a crash where I fail to call NotesTerm() and NotesTermThread() apart from killing nlnotes.exe ?

Thank you!


Feedback number WEBB8TJFKP created by ~Alexis Minponemarings on 04/20/2012

Status: Open
Comments:

Notes C API hangs during NotesInitE... (~Alexis Minpone... 20.Apr.12)
. . EXE (~Ethan Kijumiko... 23.Apr.12)




Printer-friendly

Search this forum

Member Tools


RSS Feeds

 RSS feedsRSS
All forum posts RSS
All main topics RSS